home *** CD-ROM | disk | FTP | other *** search
/ Champak 138 / Volume 138 Aug 19 2011 - Damaged.iso / Games / wildhearts_stage_dive.swf / scripts / DefineSprite_101 / frame_2 / DoAction_2.as next >
Text File  |  2011-08-19  |  12KB  |  455 lines

  1. function gameLoop()
  2. {
  3.    if(rDist - (e - player._x) < 0)
  4.    {
  5.       if(!sofaContainer.sofaL)
  6.       {
  7.          sofaItems.push(sofaContainer.attachMovie("sofaL","sofaL",sofaContainer.getNextHighestDepth(),{_x:e - w,_y:123}));
  8.       }
  9.       else
  10.       {
  11.          var _loc3_ = Math.floor(rDist / sofaLength) * -1;
  12.          if(!sofaContainer["c" + _loc3_])
  13.          {
  14.             if(xv > 8.8 || xv == undefined || player.s != "slide")
  15.             {
  16.                var _loc5_ = sofaContainer.sofaL._x + sofaContainer.sofaL._width + (_loc3_ + 2) * sofaLength;
  17.                if(_loc3_ % 2 == 0)
  18.                {
  19.                   sofaItems.push(sofaContainer.attachMovie("sofaCL","c" + _loc3_,sofaContainer.getNextHighestDepth(),{_x:_loc5_,_y:123}));
  20.                }
  21.                else
  22.                {
  23.                   sofaItems.push(sofaContainer.attachMovie("sofaCR","c" + _loc3_,sofaContainer.getNextHighestDepth(),{_x:_loc5_,_y:123}));
  24.                }
  25.             }
  26.             else if(!sofaEnded)
  27.             {
  28.                sofaEnded = true;
  29.                sofaItems.push(sofaContainer.attachMovie("sofaR","c" + _loc3_,sofaContainer.getNextHighestDepth(),{_x:sofaContainer.sofaL._x + sofaContainer.sofaL._width + (_loc3_ + 1) * sofaLength,_y:123}));
  30.             }
  31.          }
  32.       }
  33.    }
  34.    if(!jumping)
  35.    {
  36.       speed += accel * i;
  37.       speed *= decel;
  38.       speed = speed > 0.1 ? (speed <= maxspeed ? speed : maxspeed) : 0;
  39.       rDist -= speed;
  40.       if(rDist > 0)
  41.       {
  42.          if(player._x < r)
  43.          {
  44.             if(player._x + speed >= r)
  45.             {
  46.                var _loc6_ = player._x + speed - r;
  47.                door._x -= _loc6_;
  48.                player._x = r;
  49.             }
  50.             else
  51.             {
  52.                player._x += speed;
  53.             }
  54.          }
  55.          else
  56.          {
  57.             if(door)
  58.             {
  59.                if(door._x + door._width > w)
  60.                {
  61.                   door._x -= speed;
  62.                }
  63.                else
  64.                {
  65.                   door.swapDepths(this.getNextHighestDepth());
  66.                   door.removeMovieClip();
  67.                }
  68.             }
  69.             background._x -= speed;
  70.          }
  71.          animate(player);
  72.          _parent.gui.update(rDist / dist,speed / maxspeed);
  73.          i = 0;
  74.       }
  75.       else
  76.       {
  77.          player.gotoAndStop("ooof");
  78.          this.onEnterFrame = null;
  79.          this.gotoAndPlay("overTheLine");
  80.       }
  81.    }
  82.    else if(!endJump)
  83.    {
  84.       if(!angleMarker)
  85.       {
  86.          player.gotoAndStop("crouch");
  87.          attachMovie("angleMarker","angleMarker",this.getNextHighestDepth(),{_x:player._x,_y:player._y + player._height / 2});
  88.          angle = 0;
  89.       }
  90.       angle += angleInc;
  91.       if(angle >= 90)
  92.       {
  93.          angle = 86;
  94.          endJump = true;
  95.       }
  96.       angleMarker.mask._rotation -= angleInc;
  97.    }
  98.    else
  99.    {
  100.       if(xv == undefined)
  101.       {
  102.          angleMarker.removeMovieClip();
  103.          radians = angle * 3.141592653589793 / 180;
  104.          xv = speed * Math.cos(radians);
  105.          yv = speed * Math.sin(radians);
  106.          player.gotoAndPlay("jump");
  107.       }
  108.       background._x -= xv;
  109.       if(player._y < st)
  110.       {
  111.          player._y -= yv;
  112.          if(yv < 0)
  113.          {
  114.             if(player.s != "down")
  115.             {
  116.                player.gotoAndPlay("down");
  117.                player.s = "down";
  118.             }
  119.          }
  120.          else if(yv <= 2 && player.s != "glide")
  121.          {
  122.             player.gotoAndPlay("glide");
  123.             player.s = "glide";
  124.          }
  125.          yv -= grav;
  126.       }
  127.       else if(rDist > 0 || player.s === "missed")
  128.       {
  129.          player._y -= yv;
  130.          yv -= grav;
  131.          if(player._y >= f)
  132.          {
  133.             player._y = f;
  134.             this.onEnterFrame = null;
  135.             this.gotoAndStop("missed");
  136.          }
  137.          player.s = "missed";
  138.       }
  139.       else
  140.       {
  141.          player._y = st;
  142.          player.gotoAndStop("slide");
  143.          player.s = "slide";
  144.          if(xv >= 0)
  145.          {
  146.             xv -= frict;
  147.          }
  148.          else
  149.          {
  150.             xv = 0;
  151.             this.onEnterFrame = null;
  152.             trace("final distance: " + rDist);
  153.             this.score = rDist;
  154.             this.gotoAndPlay("jumped");
  155.          }
  156.       }
  157.       rDist -= xv;
  158.       if(rDist <= 0)
  159.       {
  160.          _parent.gui.distanceBar.distCount.text = Math.floor(rDist * -1) / 100 + "m";
  161.          _parent.gui["p" + curPlayer + "r" + curRun].text = curRun + ". " + Math.floor(rDist * -1) / 100 + "m";
  162.       }
  163.    }
  164.    if(sofaContainer.sofaL && (!jumping || endJump === true))
  165.    {
  166.       if(xv != undefined)
  167.       {
  168.          sofaContainer._x -= xv;
  169.       }
  170.       else
  171.       {
  172.          sofaContainer._x -= speed;
  173.       }
  174.    }
  175.    for(var _loc4_ in panels)
  176.    {
  177.       if(background._x + panels[_loc4_]._x + panels[_loc4_]._width < wv)
  178.       {
  179.          panels[_loc4_].removeMovieClip();
  180.          delete panels[_loc4_];
  181.       }
  182.    }
  183.    if(background._x + rightpanel < e)
  184.    {
  185.       rightpanel += panelwidth;
  186.       panels.push(spawnBg(rightpanel));
  187.    }
  188. }
  189. function ai()
  190. {
  191.    if(!jumppoint)
  192.    {
  193.       jumppoint = rand(aiJSP[ailvl],aiJEP[ailvl]);
  194.    }
  195.    if(!jumpangle)
  196.    {
  197.       jumpangle = rand(aiASP[ailvl],aiAEP[ailvl]);
  198.    }
  199.    if(rDist - (e - player._x) < 0)
  200.    {
  201.       if(!sofaContainer.sofaL)
  202.       {
  203.          sofaItems.push(sofaContainer.attachMovie("sofaL","sofaL",sofaContainer.getNextHighestDepth(),{_x:e - w,_y:123}));
  204.       }
  205.       else
  206.       {
  207.          var _loc3_ = Math.floor(rDist / sofaLength) * -1;
  208.          if(!sofaContainer["c" + _loc3_])
  209.          {
  210.             if(xv > 8.8 || xv == undefined || player.s != "slide")
  211.             {
  212.                var _loc5_ = sofaContainer.sofaL._x + sofaContainer.sofaL._width + (_loc3_ + 2) * sofaLength;
  213.                if(_loc3_ % 2 == 0)
  214.                {
  215.                   sofaItems.push(sofaContainer.attachMovie("sofaCL","c" + _loc3_,sofaContainer.getNextHighestDepth(),{_x:_loc5_,_y:123}));
  216.                }
  217.                else
  218.                {
  219.                   sofaItems.push(sofaContainer.attachMovie("sofaCR","c" + _loc3_,sofaContainer.getNextHighestDepth(),{_x:_loc5_,_y:123}));
  220.                }
  221.             }
  222.             else if(!sofaEnded)
  223.             {
  224.                sofaEnded = true;
  225.                sofaItems.push(sofaContainer.attachMovie("sofaR","c" + _loc3_,sofaContainer.getNextHighestDepth(),{_x:sofaContainer.sofaL._x + sofaContainer.sofaL._width + (_loc3_ + 1) * sofaLength,_y:123}));
  226.             }
  227.          }
  228.       }
  229.    }
  230.    if(rDist <= jumppoint)
  231.    {
  232.       jumping = true;
  233.    }
  234.    if(!jumping)
  235.    {
  236.       i = rand(0,1);
  237.       speed += accel * i;
  238.       speed *= decel;
  239.       speed = speed > 0.1 ? (speed <= maxspeed ? speed : maxspeed) : 0;
  240.       rDist -= speed;
  241.       if(rDist > 0)
  242.       {
  243.          if(player._x < r)
  244.          {
  245.             if(player._x + speed >= r)
  246.             {
  247.                var _loc6_ = player._x + speed - r;
  248.                door._x -= _loc6_;
  249.                player._x = r;
  250.             }
  251.             else
  252.             {
  253.                player._x += speed;
  254.             }
  255.          }
  256.          else
  257.          {
  258.             if(door)
  259.             {
  260.                if(door._x + door._width > w)
  261.                {
  262.                   door._x -= speed;
  263.                }
  264.                else
  265.                {
  266.                   door.swapDepths(this.getNextHighestDepth());
  267.                   door.removeMovieClip();
  268.                }
  269.             }
  270.             background._x -= speed;
  271.          }
  272.          animate(player);
  273.          _parent.gui.update(rDist / dist,speed / maxspeed);
  274.          i = 0;
  275.       }
  276.       else
  277.       {
  278.          player.gotoAndStop("ooof");
  279.          this.onEnterFrame = null;
  280.          this.gotoAndPlay("overTheLine");
  281.       }
  282.    }
  283.    else if(!endJump)
  284.    {
  285.       if(!angleMarker)
  286.       {
  287.          player.gotoAndStop("crouch");
  288.          attachMovie("angleMarker","angleMarker",this.getNextHighestDepth(),{_x:player._x,_y:player._y + player._height / 2});
  289.          angle = 0;
  290.       }
  291.       if(angle >= jumpangle)
  292.       {
  293.          endJump = true;
  294.       }
  295.       angle += angleInc;
  296.       if(angle >= 90)
  297.       {
  298.          angle = 86;
  299.          endJump = true;
  300.       }
  301.       angleMarker.mask._rotation -= angleInc;
  302.    }
  303.    else
  304.    {
  305.       if(xv == undefined)
  306.       {
  307.          angleMarker.removeMovieClip();
  308.          radians = angle * 3.141592653589793 / 180;
  309.          xv = speed * Math.cos(radians);
  310.          yv = speed * Math.sin(radians);
  311.          player.gotoAndPlay("jump");
  312.       }
  313.       background._x -= xv;
  314.       if(player._y < st)
  315.       {
  316.          player._y -= yv;
  317.          if(yv < 0)
  318.          {
  319.             if(player.s != "down")
  320.             {
  321.                player.gotoAndPlay("down");
  322.                player.s = "down";
  323.             }
  324.          }
  325.          else if(yv <= 2 && player.s != "glide")
  326.          {
  327.             player.gotoAndPlay("glide");
  328.             player.s = "glide";
  329.          }
  330.          yv -= grav;
  331.       }
  332.       else if(rDist > 0 || player.s == "missed")
  333.       {
  334.          player._y -= yv;
  335.          yv -= grav;
  336.          if(player._y >= f)
  337.          {
  338.             player._y = f;
  339.             this.onEnterFrame = null;
  340.             this.gotoAndStop("missed");
  341.          }
  342.          player.s = "missed";
  343.       }
  344.       else
  345.       {
  346.          player._y = st;
  347.          player.gotoAndStop("slide");
  348.          player.s = "slide";
  349.          if(xv >= 0)
  350.          {
  351.             xv -= frict;
  352.          }
  353.          else
  354.          {
  355.             xv = 0;
  356.             this.onEnterFrame = null;
  357.             this.gotoAndPlay("jumped");
  358.          }
  359.       }
  360.       rDist -= xv;
  361.       if(rDist <= 0)
  362.       {
  363.          _parent.gui.distanceBar.distCount.text = Math.floor(rDist * -1) / 100 + "m";
  364.          _parent.gui["p" + curPlayer + "r" + curRun].text = curRun + ". " + Math.floor(rDist * -1) / 100 + "m";
  365.       }
  366.    }
  367.    if(sofaContainer.sofaL && (!jumping || endJump === true))
  368.    {
  369.       if(xv != undefined)
  370.       {
  371.          sofaContainer._x -= xv;
  372.       }
  373.       else
  374.       {
  375.          sofaContainer._x -= speed;
  376.       }
  377.    }
  378.    for(var _loc4_ in panels)
  379.    {
  380.       if(background._x + panels[_loc4_]._x + panels[_loc4_]._width < w)
  381.       {
  382.          panels[_loc4_].removeMovieClip();
  383.          delete panels[_loc4_];
  384.       }
  385.    }
  386.    if(background._x + rightpanel < e)
  387.    {
  388.       rightpanel += panelwidth;
  389.       panels.push(spawnBg(rightpanel));
  390.    }
  391. }
  392. function spawnBg(x)
  393. {
  394.    if(spawnIndex == undefined)
  395.    {
  396.       spawnIndex = -1;
  397.    }
  398.    var _loc1_ = ["painting","clock","plant","shelves","lamp","painting"];
  399.    trace("spawnBg:" + spawnIndex + " " + _loc1_.length);
  400.    if(spawnIndex < _loc1_.length)
  401.    {
  402.       spawnIndex++;
  403.       return background.attachMovie(_loc1_[spawnIndex],"bg" + Math.floor(x),background.getNextHighestDepth(),{_x:x,cacheAsBitmap:true});
  404.    }
  405. }
  406. function rand(min, max)
  407. {
  408.    return Math.floor(Math.random() * (max - min + 1)) + min;
  409. }
  410. function animate(t)
  411. {
  412.    if(this.speed > 0)
  413.    {
  414.       this.aCount = this.aCount + 1;
  415.       this.aSpeed = Math.floor((this.afps - this.speed / this.maxspeed * this.afps) * 0.25);
  416.       if(this.aSpeed <= this.aCount)
  417.       {
  418.          this.aCount = 0;
  419.          t.play();
  420.       }
  421.    }
  422.    else
  423.    {
  424.       t.gotoAndPlay("stand");
  425.    }
  426. }
  427. function pauseGame()
  428. {
  429.    if(isPaused)
  430.    {
  431.       isPaused = false;
  432.       this.onEnterFrame = gameLoop;
  433.    }
  434.    else
  435.    {
  436.       isPaused = true;
  437.       this.onEnterFrame = null;
  438.    }
  439. }
  440. function slideSofa()
  441. {
  442.    speed *= 0.97;
  443.    if(speed > 1)
  444.    {
  445.       sofaContainer._x -= speed;
  446.       player._x -= speed;
  447.       background._x -= speed;
  448.    }
  449.    else
  450.    {
  451.       this.onEnterFrame = null;
  452.       play();
  453.    }
  454. }
  455.